.Radio {
  position: relative;
  background-color: #fff;
  box-sizing: border-box;
  overflow: hidden;
}

.Radio--wrap {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 14px;
  min-height: 50px;
}

.Radio--wrap input[type=radio] {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: transparent;
}

.Radio--icon {
  position: absolute;
  right: 15px;
  width: 20px;
  height: 20px;
}

.Radio--icon.position {
  left: 0;
}

.Radio--icon-normal {
  border-radius: 50%;
  border: 1px solid #cacaca;
  transition: all .2s;
}

.Radio--icon-normal.selected {
  display: flex;
  justify-content: center;
  background-color: #3E81F1;
  border: 1px solid transparent;
}

.Radio--icon-normal.disabled {
  background-color: #ccc;
}

.Radio--icon-normal.selected i {
  position: absolute;
  top: 4px;
  display: flex;
  width: 10px;
  height: 5px;
  border-top: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: rotate(-45deg);
}

.Radio--icon-check.selected i {
  position: absolute;
  top: 4px;
  display: flex;
  width: 13px;
  height: 7px;
  border-top: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid #3E81F1;
  border-left: 1px solid #3E81F1;
  transform: rotate(-45deg);
}

.Radio--label {
  position: absolute;
  left: 0;
  font-size: 16px;
  color: #333;
}

.Radio--label.position {
  left: 30px;
}
